//
//  JHRulerStyle.h
//  iOS尺子控件
//
//  Created by JH on 2017/4/18.
//  Copyright © 2017年 JH. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
typedef NS_ENUM(NSInteger, rulerViewShowType) {
    /**
     *  水平显示模式
     */
    rulerViewshowHorizontalType = 0,
    /**
     *  垂直显示模式
     */
    rulerViewshowVerticalType = 1,
};

@interface JHRulerStyle : NSObject
//定制尺子样式
@property(nonatomic,assign)rulerViewShowType showType;

@property (nonatomic , strong, nonnull) UIColor *backgroundColor;//尺子背景颜色 default is 0xf9f9f9
@property (nonatomic , strong, nonnull) UIColor *lineColor;//尺子刻度颜色 default is 0xc7c7c7
@property (nonatomic , strong, nonnull) UIFont *font;//尺子上数字的字体 default is [UIFont systemFontOfSize:18];
@property (nonatomic , assign) NSInteger spacing;//刻度之间的间隔 default is 10;涉及到位置的准确性，所以用整型
@property (nonatomic , assign) CGFloat longLineLength; //长刻度线的长度 ,default is 24
@property (nonatomic , assign) CGFloat shortLineLength;//短刻度的长度 ,default is 12
@property (nonatomic , assign) NSInteger minValue; //尺子刻度最小值 ,default is 0
@property (nonatomic , assign) NSInteger maxValue; //尺子刻度最大值 ,default is 100
@property (nonatomic , assign) CGFloat accuracy; //精确度默认是1，可以是0.1，0.2，0.5,2,5,10等等；可以被1整除的效果会比较好
@property (nonatomic , assign) BOOL stopOnTheLine; //default is yes 设置后只会停留在刻度线上,不会停留在两刻度线之间,与精度相关

@property (nonatomic , assign) CGFloat margin;  //JHRulerTypeRuler专用属性，第一条刻度距离边缘的距离，default is 15

@property (nonatomic , assign) NSInteger defaultVaule; //LXMRulerTypePicker专用属性，尺子出现时默认指示的值，default is minValue;如果之后手动修改rulerView的frame，会导致尺子重新指示到defaultValue，所以修改frame后最好再调用一次reloadData；
@property (nonatomic , strong) UIColor * _Nullable markViewColor; //LXMRulerTypePicker专用属性，指示标记的颜色，default is 0xea5151,可以为空

@property (nonatomic, assign) CGSize markViewSize;//LXMRulerTypePicker专用属性，指示标记的大小，default is 16*8


@end
